package com.it.base.leetcode.day1;

/**
 * 给定一个整数数组 nums ，找到一个具有最大和的连续子数组（子数组最少包含一个元素），返回其最大和。
 */
public class Topic53 {

    public static int maxSubArray(int[] nums) {
        int res = 0;
        // 当前连续的最大
        int currentRes = 0;
        // 最大值的起始下标
        int currentMinPoint =0;
        // 最大值的结束指针;
        int currentMaxPoint=0;
        for (int i =0;i<nums.length;i++){
            // 假定当前第一个数就是整个里面最大的
            currentRes = nums[i];
            for (int j=0;j<nums.length;j++){
               int  temp =currentRes+nums[j];
                if(temp>currentRes){
                    currentRes = temp;
                }
            }

        }
        return res;
    }
    public static void main(String[] args) {
        int[] nums=new int[]{-2,1,-3,4,-1,2,1,-5,4};
        int res = maxSubArray(nums);
        System.out.println(res);
    }
}
